<?php
include $_SERVER['DOCUMENT_ROOT'].'/PariGest/pages/inc/entete.php';
require_once $REP_CLASS . 'class.Compte.php';
require_once $REP_OUTILS . 'StdBoutons.php';

function chargeCompte($compte, $prefixe, $index)
{
  $compte->setIdCompte(getChaineNotNullSinon($prefixe."idCompte_".$index,"0"));
  $compte->setSolde(getChaineNotNullSinon($prefixe."Solde_".$index, "0.00"));
  //$compte->setDateMaj(getChaineNotNullSinon($prefixe."DateMaj_".$index, ""));
  $compte->setDefaut(getChaineNotNullSinon($prefixe."Defaut_".$index, "0") == 'on' ?'1':'0');
  $compte->setCommentaire(getChaineNotNullSinon($prefixe."Commentaire_".$index, ""));
  $compte->setLibelle(getChaineNotNullSinon($prefixe."Libelle_".$index, ""));
}

try
{
  $compte = new Compte($db);
  //chargeClasse($classe);
  if( $action == 'UPDATE' )
  {
   // $trace->fb('setIdCompte ' . getChaineNotNullSinon("idCompte_0","0"));
  
    $nbChamp = getChaineNotNullSinon("NbChamps", "0");
    // Modification des champs existants
    for($index=0; $index < $nbChamp; $index++ )
    {
      chargeCompte($compte, "", $index);
      $compte->modification();
    }
    // Insertion des nouvelles lignes
    for($index=0; $index < 5; $index++ )
    {
      chargeCompte($compte, "N", $index);
      if( $compte->getLibelle() == "" )
      continue;
      $compte->insertion();
    }
  }
  else if( $action == 'DELETE' )
  {
    $nbChamp = getChaineNotNullSinon("NbChamps", "0");
    for($index=0; $index < $nbChamp; $index++ )
    {
      if( getChaineNotNullSinon("coche_".$index, "") == "1" )
      {
        chargeCompte($compte, "", $index);
        $compte->suppression();
      }
    }
  }
  
  $db->commit();
  $compte = new Compte($db);
  $stmt = $compte->select();
  $smarty->assign('compte', $stmt->fetchAll());
  $smarty->assign('NbChamps', $stmt->rowCount());  
}
catch(MyException $e)
{
  $trace->fb('!!!!! ERREUR !!!!!');
  include $_SERVER['DOCUMENT_ROOT'].'/PariGest/pages/inc/catch.php'; 
}
/*
 * - Gérer une checkBox pour l'indicateur par défaut
 * - Gérer un défaut dans toute la liste + lors de l'insertion
 * - Pour voir modifier les lignes + validation auto
 * - Ajout d'un icone pour le commentaire
 * */
//$template->set_filenames(array('classe' => 'param_classes.tpl'));
//print_r($stmt->fetchAll());

/*while($row = $stmt->fetch())
 {
 $template->assign_block_vars('ligneClasse', array('idClasse' => $row['idClasse']));
 $template->assign_block_vars('ligneClasse.colonneClasse', array('libelle' => $row['Libelle']));
 $template->assign_block_vars('ligneClasse.colonneClasse', array('libelle' => $row['Annee']));
 $template->assign_block_vars('ligneClasse.colonneClasse', array('libelle' => $row['Defaut']));
 }*/

//$template->pparse('classe');

$smarty->display('param_compte.tpl');
?>